#ifndef _REQUEST_CP_HPP
#define _REQUEST_CP_HPP 1

#include "../Parameters.hpp"
#include "MacArrayMessage.hpp"

namespace BFT
{
	namespace messages
	{
		class RequestCP : public MacArrayMessage
		{	
			public:
				
			RequestCP(uint32_t _seqNo, uint32_t sender);
			
			RequestCP(boost::shared_ptr<char> _bytes, int _bytes_size);
			
			uint32_t getSequenceNumber(); //inlined
			
			uint32_t getSendingReplica(); //inlined
			
			static uint32_t computeSize();
			
			void printInfo();
			
			protected:
			
			uint32_t seqNo;
		};
		
		inline uint32_t RequestCP::getSequenceNumber() {return seqNo;}
		inline uint32_t RequestCP::getSendingReplica() {return getSender();}
	}
}

#endif
